#pragma once
#include <vector>
#include <string>
#include <memory>

class Camera;
class Shader;
class SkyBox
{
public:
    SkyBox(const float& width = 0, const float& height = 0);
    ~SkyBox();
    void init();
    bool loadCubeMap(const std::vector<std::string>& images);
    void draw(Camera* camera);
private:
    unsigned int cubeTextureId;
    Shader* skyBoxShader;
    unsigned int skyBoxVAO;
    unsigned int skyBoxVBO;

    float width;
    float height;
};